library(VennDiagram)
## Loading required package: grid
## Loading required package: futile.logger
library(Seurat)
## Loading required package: ggplot2
## Loading required package: cowplot
## 
## Attaching package: 'cowplot'
## The following object is masked from 'package:ggplot2':
## 
##     ggsave
## Loading required package: Matrix
load('../../data/markergenes/markergenes-crossed.negbinom')
markers <- df.cluster_markers

Marker genes of the intersection of Supra and Peri. Supra has 99 marker genes, Peri 71. They have 9 genes in common.

genes.peri <- markers[markers$cluster == 'Peri.white', 'gene']
genes.supra <- markers[markers$cluster == 'Supra.white', 'gene']
peri.supra <- intersect(genes.peri, genes.supra)

grid.newpage()
draw.pairwise.venn(length(genes.peri), length(genes.supra), length(peri.supra), category=c('Peri', 'Supra'), lty=rep('blank', 2), fill=c('#f67770', '#1fbfc3'), scaled=T, cat.fontfamily = rep("helvetica", 2))

## (polygon[GRID.polygon.11], polygon[GRID.polygon.12], polygon[GRID.polygon.13], polygon[GRID.polygon.14], text[GRID.text.15], text[GRID.text.16], text[GRID.text.17], text[GRID.text.18], text[GRID.text.19])

Marker genes of the intersection of Subq and Visce. Subq has 65 marker genes, Visce 22. They have only 2 genes in common.

genes.visce <- markers[markers$cluster == 'Visce.brown', 'gene']
genes.subq <- markers[markers$cluster == 'Subq.brown', 'gene']
visce.subq <- intersect(genes.visce, genes.subq)

grid.newpage()
draw.pairwise.venn(length(genes.visce), length(genes.subq), length(visce.subq), category=c('Visce', 'Subq'), lty=rep('blank', 2), fill=c('#c680fc', '#7dac1f'), scaled=T, cat.fontfamily = rep("helvetica", 2))

## (polygon[GRID.polygon.20], polygon[GRID.polygon.21], polygon[GRID.polygon.22], polygon[GRID.polygon.23], text[GRID.text.24], text[GRID.text.25], text[GRID.text.26], lines[GRID.lines.27], text[GRID.text.28], text[GRID.text.29])
all10x <- readRDS('../../data/10x')

Markers intersection Peri and Supra

print(peri.supra)
## [1] "TM4SF1"   "MTRNR2L8" "LY6K"     "MGST3"    "FHL2"     "COL6A2"  
## [7] "HSPA8"    "TAGLN"    "PENK"
markers[which(markers$gene %in% peri.supra),]
VlnPlot(all10x, features.plot=toupper(c('TM4SF1', 'MTRNR2L8', 'LY6K', 'MGST3', 'FHL2', 'COL6A2', 'HSPA8', 'TAGLN', 'PENK')), group.by='sample_name', point.size.use=-1, nCol=2, x.lab.rot=T, size.x.use=10)

Markers intersection Subq and Visce

print(visce.subq)
## [1] "HOXB7" "GREM1"
print(markers[which(markers$gene %in% visce.subq),])
##         cluster        p_val avg_logFC pct.1 pct.2    p_val_adj  gene
## 205 Visce.brown 1.572053e-98 0.2671629 0.540 0.324 3.785189e-94 HOXB7
## 211 Visce.brown 1.220526e-07 0.3825937 0.771 0.691 2.938783e-03 GREM1
## 218  Subq.brown 0.000000e+00 0.5615335 0.888 0.691 0.000000e+00 GREM1
## 223  Subq.brown 0.000000e+00 0.2726722 0.601 0.324 0.000000e+00 HOXB7
VlnPlot(all10x, features.plot=toupper(c('GREM1', 'HOXB7')), group.by='sample_name', point.size.use=-1, nCol=2, x.lab.rot=T, size.x.use=10)

Top markers Peri

print(markers[markers$cluster == 'Peri.white',][1:10,])
##       cluster p_val avg_logFC pct.1 pct.2 p_val_adj     gene
## 1  Peri.white     0 0.8670990 0.928 0.407         0   TM4SF1
## 2  Peri.white     0 0.8098424 0.963 0.681         0     SRGN
## 3  Peri.white     0 0.6577277 0.564 0.161         0     NEFM
## 4  Peri.white     0 0.6504400 0.830 0.468         0     MEST
## 5  Peri.white     0 0.6249721 0.932 0.628         0     RGS4
## 6  Peri.white     0 0.6177285 0.961 0.817         0     PTX3
## 7  Peri.white     0 0.5764050 0.698 0.354         0 MTRNR2L1
## 8  Peri.white     0 0.5387147 0.967 0.802         0   GLIPR1
## 9  Peri.white     0 0.5092244 0.994 0.964         0    CRYAB
## 10 Peri.white     0 0.5058522 0.917 0.656         0     CTSC
VlnPlot(all10x, features.plot=as.vector(markers[markers$cluster == 'Peri.white',][1:10,'gene']), group.by='sample_name', point.size.use=-1, nCol=2, x.lab.rot=T, size.x.use=10)

Top markers Supra

print(markers[markers$cluster == 'Supra.white',][1:10,])
##        cluster p_val avg_logFC pct.1 pct.2 p_val_adj      gene
## 81 Supra.white     0 1.7650025 0.786 0.226         0    IGFBP5
## 82 Supra.white     0 0.9351586 0.977 0.832         0    IGFBP3
## 83 Supra.white     0 0.7779768 0.978 0.800         0    AKAP12
## 84 Supra.white     0 0.6136319 0.804 0.475         0 TNFRSF11B
## 85 Supra.white     0 0.5950695 0.955 0.719         0       DCN
## 86 Supra.white     0 0.5918296 0.884 0.539         0     IFI27
## 87 Supra.white     0 0.5818591 0.808 0.448         0    EFEMP1
## 88 Supra.white     0 0.5733726 0.995 0.892         0     MFAP5
## 89 Supra.white     0 0.5585209 0.905 0.656         0    CYP1B1
## 90 Supra.white     0 0.5429617 0.296 0.037         0     ADH1B
VlnPlot(all10x, features.plot=as.vector(markers[markers$cluster == 'Supra.white',][1:10,'gene']), group.by='sample_name', point.size.use=-1, nCol=2, x.lab.rot=T, size.x.use=10)

Top markers Visce

print(markers[markers$cluster == 'Visce.brown',][1:10,])
##         cluster         p_val avg_logFC pct.1 pct.2     p_val_adj     gene
## 189 Visce.brown  0.000000e+00 0.3562843 1.000 1.000  0.000000e+00      FTL
## 190 Visce.brown  0.000000e+00 0.3366891 0.999 0.996  0.000000e+00     GUK1
## 191 Visce.brown  0.000000e+00 0.3156858 1.000 0.998  0.000000e+00     RPS2
## 192 Visce.brown  0.000000e+00 0.3059777 0.992 0.985  0.000000e+00   IGFBP4
## 193 Visce.brown  0.000000e+00 0.2898124 1.000 0.998  0.000000e+00    RPL13
## 194 Visce.brown  0.000000e+00 0.2784929 0.992 0.946  0.000000e+00      SRM
## 195 Visce.brown  0.000000e+00 0.2749209 0.999 0.990  0.000000e+00     MT2A
## 196 Visce.brown  0.000000e+00 0.2728355 0.993 0.966  0.000000e+00 PPP1R14B
## 197 Visce.brown  0.000000e+00 0.2511432 0.974 0.919  0.000000e+00      JTB
## 198 Visce.brown 1.419326e-297 0.2506235 0.325 0.003 3.417452e-293    BARX1

Interestingly, some genes seem to be found because Supra4 and Subq4 are different.

VlnPlot(all10x, features.plot=as.vector(markers[markers$cluster == 'Visce.brown',][1:10,'gene']), group.by='sample_name', point.size.use=-1, nCol=2, x.lab.rot=T, size.x.use=10)

Top markers Subq

print(markers[markers$cluster == 'Subq.brown',][1:10,])
##        cluster p_val avg_logFC pct.1 pct.2 p_val_adj   gene
## 213 Subq.brown     0 1.1149278 0.897 0.722         0  THBS1
## 214 Subq.brown     0 0.9239007 0.974 0.948         0  TIMP3
## 215 Subq.brown     0 0.8099464 0.402 0.094         0 BCYRN1
## 216 Subq.brown     0 0.7024385 0.831 0.729         0   DKK1
## 217 Subq.brown     0 0.6628238 0.435 0.407         0  VEPH1
## 218 Subq.brown     0 0.5615335 0.888 0.691         0  GREM1
## 219 Subq.brown     0 0.4298688 0.291 0.091         0  ACTC1
## 220 Subq.brown     0 0.3025698 0.554 0.370         0   NMT1
## 221 Subq.brown     0 0.3009614 1.000 1.000         0 RPL37A
## 222 Subq.brown     0 0.2737987 1.000 1.000         0  RPL38

Most of the markers for Subq seem to be found because Subq_3 stands out (RPS29, BCYRN1, RPL36A, ATP5I, AC009501.4, RPS10). Mostly ribosomal genes.

BCYRN1 = brain cytoplasmic RNA

VlnPlot(all10x, features.plot=as.vector(markers[markers$cluster == 'Subq.brown',][1:10,'gene']), group.by='sample_name', point.size.use=-1, nCol=2, x.lab.rot=T, size.x.use=10)